﻿<!DOCTYPE html>
<html lang="de">
<head>
    <meta charset="UTF-8">
    <title>Allgemeiner Berichtsmanager</title>
    <link href="../manual.css" rel="stylesheet" type="text/css">
    <script src="../js/toc.js"></script>
    <script src='http://ajax.googleapis.com/ajax/libs/jquery/2.0.0/jquery.min.js'></script>
    <script src="../js/back_to_top.js"></script>
</head>
<body onload="generateTOC(document.getElementById('toc'));">
    <header>
        <nav><small><a id="go_home" href="../index.html?lang=de_DE">Zurück zur Hauptseite</a></small></nav>

        <a href="#" id="back-to-top"><img src="../img/backtotop.png" alt="Zum Seitenanfang" /></a>
        <!--Smooth Back to Top Button End-->

        <h1>Allgemeiner Berichtsmanager</h1>
    </header>

    <!-- ToC generated by Javascript -->
    <nav id="toc"></nav>

    <h2>Den allgemeinen Berichtsmanager öffnen</h2>
    <p>
        Der allgemeinen Berichtsmanager (<abbr>GRM</abbr>) kann in der Toolbar aufgerufen werden, oder im Hauptmenü mit
        <kbd><samp>Extras</samp> &rarr; <samp>allgemeiner Berichtsmanager&hellip;</samp>
        </kbd>.
    </p>
    <img class="shadow" alt="GRM Symbolleiste" src="../en_US/grm_toolbar.png">

    <h2>Neuen Bericht hinzufügen</h2>
    <p>Es gibt zwei Möglichkeiten.</p>

    <h3>Erstelle einen Bericht von Grund auf neu</h3>
    <ol>
        <li>In der Navigationsstruktur mit der rechten Maustaste auf
            <kbd><samp>Berichte</samp></kbd> klicken.</li>
        <li>Wähle den Menüpunkt: <kbd><samp>Neuer Leerer Bericht</samp></kbd>.</li>
        <li>Optional: Gib den Namen einer neuen Berichtsgruppe oder wähle eine bestehende aus.</li>
        <li>Gib dem neuen Bericht einen Namen (Berichte können auch noch später mit der rechten Maustaste auf den Menüpunkt:
            <kbd><samp>Bericht umbenennen</samp></kbd> umbenannt werden)</li>
        <li>Die folgende Registerkarten werden angezeigt: Ausgabe, SQL, Lua, Vorlage und Beschreibung.</li>
        <li>
            Wähle die Registerkarte SQL, kopiere das SQL-Skript in das Editor-Fenster,
            überprüfe, dass das SQL-Skript mit einem Semikolon endet und bestätige die Schaltfläche "<kbd><samp>Speichern</samp></kbd>".
        </li>
        <li>Klicke den <kbd><samp>Test</samp></kbd> Button, um das SQL-Skript
            auszuführen.</li>
        <li>War der Test erfolgreich, erscheint die Schaltfläche <kbd><samp>Erstelle Vorlage</samp></kbd>. Betätige diese, um eine HTML-Vorlage
            für den Bericht zu erstellen.</li>
        <li>Klicke die Schaltfläche <kbd><samp>Ausführen</samp></kbd> und der HTML-
            Bericht wird im Ausgabefenster angezeigt.</li>
    </ol>
    <img class="shadow" alt="Erstellung eines neuen Berichts von Scratch-Animation"
    src="../en_US/grm.gif">

    <h4>Berichtsparameter</h4>
    <p>
        Ab MMEX Version 1.4.0 gibt es die Möglichkeit Datumswerte in ein
        SQL-Skript zu übertragen.
        Dafür stehen vier Optionen zur Verfügung: <var>&single_date</var>,
        <var>&begin_date</var>, <var>&end_date</var>, <var>&budget_years</var>.
        Für den Fall, dass das SQL-Skript einen der oben genannten Parameter enthält wird dieser durch das Datum aus einem Kalender-Widget ersetzt.<br>
        Dieses SQL-Skript liefert zum Beispiel alle Kontensalden für das
        angegebene Datum:
    </p>
    <pre><code class="language-sql">
            with b as (
            select
                ACCOUNTID,
                STATUS,
                (case when TRANSCODE = 'Deposit' then TRANSAMOUNT else -TRANSAMOUNT end) as TRANSAMOUNT,
                TRANSDATE
            from
                CHECKINGACCOUNT_V1

            union all

            select
                TOACCOUNTID,
                STATUS,
                TOTRANSAMOUNT,
                TRANSDATE
            from
                CHECKINGACCOUNT_V1
                where TRANSCODE = 'Transfer'
            )

            select
            a.ACCOUNTNAME,
            total(TRANSAMOUNT) + a.INITIALBAL as Balance
            from ACCOUNTLIST_V1
            as a, b
            where a.STATUS = 'Open'
                and b.ACCOUNTID = a.ACCOUNTID
                and b.STATUS <> 'V'
                and b.TRANSDATE <= '&single_date'
            group
                by a.ACCOUNTNAME
            order
                by a.ACCOUNTNAME asc;
    </code></pre><br>
    <img class="shadow" alt="GRM Report Ausgabe mit einem einzigen Datumsparameter
    Beispiel" src="../en_US/grm_custom_date.png">

    <h3>Importieren von Berichten</h3>
    <p>
        Es gibt viele Berichte von Benutzern oder Entwicklern auf
        <a href="https://github.com/moneymanagerex/general-reports/releases">GitHub</a>
    </p>

    <h2>Exportieren von Berichtsdefinition</h2>
    <p>
        Wenn Du einen hilfreichen Bericht erstellt hast, kann dieser als ZIP Datei exportiert werden.
    </p>

    <footer><p><small>
        Copyright &copy; 2005-2009 Madhan Kanagavel<br>
        Copyright &copy; 2013-2019 MMEX Mitwirkende<br>
        <span id="translator">Übersetzer: MMEX Mitwirkende</span>
    </small></p></footer>
    <script>
        var LANG = document.getElementsByTagName('html')[0].getAttribute('lang');
        var tr = document.getElementById("translator");
        if (LANG == 'en')
            tr.parentNode.removeChild(tr);
    </script>

</body>
</html>
